package com.iplatform.iplatformuser.privilege.dao;

import com.iplatform.module.privilege.DwTargetBean;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;


/**
* Title: TargetMapper
* Description:
* @author RayLLi
* @date 2018年8月31日
 */
@Mapper
public interface TargetMapper {

	/**
	 * Title: query
	 * Description:
	 * @param formMap
	 * @return
	 */
	public List<DwTargetBean> query(Map<String, String> formMap);

	/**
	 * Title: queryRoleTargets
	 * Description:
	 * @param formMap
	 * @return
	 */
	public List<DwTargetBean> queryRoleTargets(Map<String, String> formMap);

	/**
	 * Title: insert
	 * Description:
	 * @param dwTargetBean
	 * @return
	 */
	public int insert(DwTargetBean dwTargetBean);

	/**
	 * Title: update
	 * Description:
	 * @param dwTargetBean
	 * @return
	 */
	public int update(DwTargetBean dwTargetBean);

	/**
	 * Title: delete
	 * Description:
	 * @param deleteId
	 * @return
	 */
	public int delete(String deleteId);

	/**
	 * Title: batchDelete
	 * Description:
	 * @param deleteIds
	 */
	public void batchDelete(String[] deleteIds);

	/**
	 * Title: selectTarget
	 * Description:
	 * @param formMap
	 */
	public void selectTarget(Map<String, String> formMap);

	/**
	 * Title: deleteTargetByMenuId
	 * Description:
	 * @param menuId
	 */
	public void deleteTargetByMenuId(String menuId);

	/**
	 * Title: deleteTarget
	 * Description:
	 * @param menuId
	 * @param targetId
	 */
	public void deleteTarget(@Param("menuId") String menuId, @Param("targetId") String targetId);

	/**
	 * Title: isMenuSelectTarget
	 * Description:
	 * @param menuId
	 * @param targetId
	 * @return
	 */
	public String isMenuSelectTarget(@Param("menuId") String menuId, @Param("targetId") String targetId);

	/**
	 * Title: querySelectedTargetByMenuId
	 * Description:
	 * @param menuId
	 * @return
	 */
	public List<DwTargetBean> querySelectedTargetByMenuId(Map<String, String> formMap);

	/**
	 * Title: queryNotSelectedTargetByMenuId
	 * Description:
	 * @param menuId
	 * @return
	 */
	public List<DwTargetBean> queryNotSelectedTargetByMenuId(Map<String, String> formMap);

	/**
	 * selectTargetType
	 * @return
	 */
	public List<Map<String,String>> selectTargetType();

	/**
	 * deleteTargetMenu
	 * @param formMap
	 */
	public void deleteTargetMenu(Map<String, String> formMap);

	/**
	 * insertTargetMenu
	 * @param list
	 */
	public void insertTargetMenu(List<Map<String, String>> list);



}
